package hecosire.com.hecosireapp;
import android.content.Context;
import android.content.Intent;
import android.os.AsyncTask;
import android.util.Log;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import java.io.InputStream;
public class NewReportTask extends AsyncTask<Integer, Void, String> {
private Exception exception;
private Context context;
private UserToken token;
public NewReportTask(Context context, UserToken token) {
this.context = context;
this.token = token;
}
protected String doInBackground(Integer... values) {
InputStream inputStream = null;
try {
DefaultHttpClient httpclient = new DefaultHttpClient(new BasicHttpParams());
HttpPost httppost = new HttpPost(MyApplication.RECORDS_API_URL);
httppost.setEntity(new StringEntity("{ \"record\": { \"health_state_id\": "+ values[0] +" }}"));
httppost.setHeader("Content-type", "application/json");
httppost.setHeader("Accept", "application/json");
httppost.setHeader("X-User-Token", token.getToken());
httppost.setHeader("X-User-Email", token.getEmail());
HttpResponse response = httpclient.execute(httppost);
if (response.getStatusLine().getStatusCode() != 201) {
throw new Exception("Post failed");
}
return "";
} catch (Exception e) {
this.exception = e;
Log.e("test", "test", e);
} finally {
try {
if (inputStream != null) inputStream.close();
} catch (Exception squish) {
Log.e("test", "test", squish);
this.exception = squish;
}
}
return null;
}
protected void onPostExecute(String result) {
Intent goToNextActivity = new Intent(context.getApplicationContext(), MainActivity.class);
goToNextActivity.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(goToNextActivity);
}
}